1. Field of the Invention
The present invention relates to an image processing apparatus and method, which can add additional information to an input image, and a storage medium which stores the method.
2. Related Background Art
FIG. 8 is a block diagram showing a conventional image processing unit 102 and image forming unit 101, which can execute color printing.
In FIG. 8, a CPU 5 controls the operations and operation timings of the respective units included in the image processing unit 102.
A host interface unit 1 interfaces various data communications between the image processing unit 102, and a host computer 100 as external equipment, and has an output buffer for temporarily storing data to be transmitted to the host computer 100, and an input buffer for temporarily holding data received from the host computer 100.
The host interface unit 1 not only exchanges various data with the host computer 100 but also controls communications with the host computer 100.
Hence, various data must be exchanged between the image processing unit 102 or image forming unit 101 and the host computer 100 via the host interface unit 1.
A communication line 2 connects the image processing unit 102 and host computer 100.
When image data (code data which contains character codes, graphic formation information, and control information and described in a predetermined description format) to be subjected to image processing or image formation is input from the host computer 100 to the image processing unit 102, the input image data is stored in a page memory 3 as code data.
The page memory 3 has a capacity capable of storing code data for at least one page of image, and stores code data containing character codes, graphic formation information, and control information for an image of each page in the reception order via the host interface unit 1.
A font memory 4 stores character pattern data corresponding to character codes. A program ROM 8 stores an image mapping program (a program for interpreting and mapping code data of character codes and graphic formation information to image data that can be processed by the image forming unit 101).
Hence, the character code in the code data which is received from the host computer 100 and stored in the page memory 3 is converted into bit pattern data using the data in the font memory 4 and image mapping program, and the graphic formation information in the code data is also converted into bit pattern data using the image mapping program. These converted bit pattern data are mapped as image data for printing on an image memory 6 (to be described later) in units of pages, respectively.
Note that the program ROM 8 also stores a control program required for controlling the entire image processing unit, and the CPU 5 controls the entire apparatus in accordance with that control program.
A random access memory (RAM) 7 is used as a work area used by the CPU 5 when it reads/writes various temporary data used upon executing processing using the control program.
The image memory 6 stores the bit pattern data generated by the image mapping program stored in the program ROM 8 as image data, and can store image data for at least one page of image in correspondence with the code data stored in the page memory 3.
The generation sequence of image data will be described in detail below. The CPU 5 interprets the character code, graphic formation information, and control information stored in the page memory 3 on the basis of the image mapping program stored in the program ROM 8 to generate various kinds of object information. Parallel to generation of such object information, the CPU 5 executes rasterization and pseudo gradation processing in turn.
In the rasterization, the CPU 5 converts R, G, and B (additive color mixing) as display color data contained in the graphic formation information into Y, M, C, and K (subtractive color mixing) that can be processed by the image forming unit 101, converts each character code into pre-stored font data such as bit pattern data, outline font data, or the like, and so forth to generate bitmap data. Also, the CPU 5 performs the pseudo gradation processing for the generated bitmap data to generate image data that can be processed by the image forming unit 101.
Note that the image data is binary or n-valued image data corresponding to the image forming unit 101.
A FIFO (First In First Out) memory 9 receives image data from the image memory 6, and outputs it to an image forming unit""s interface unit 10. Image data output from the FIFO memory 9 is output as a video signal to the image forming unit 101 via the image forming unit""s interface unit 10.
The image forming unit""s interface unit 10 has an output buffer for temporarily holding a video signal to be output to the image forming unit 101 and a communication signal (command and the like) used in communications with the image forming unit 101, and an input buffer for temporarily holding a signal sent from the image forming unit 101. The image forming unit""s interface unit 10 not only exchanges signals with the image forming unit 101 but also controls communications with the image forming unit 101.
A communication line 11 is used in data exchange between the image processing unit 102 and the image forming unit 101 shown in the block diagram in FIG. 8.
An operation panel 13 is comprised of command input means such as a keyboard, and the like, and a display device such as a CRT display and the like. With this command input means, the operator can make designation inputs for setting the operation environments of the respective units, e.g., setting the online/offline state of the host interface unit 1, and the like. With the display device, the operator can monitor the operation state (e.g., printing is ready or not, and so forth) of the image forming unit 101, and the operation state (mapping of code data is in progress, and so forth) of the image processing unit 102.
A command signal input from the operation panel 13 is supplied onto a data bus 14 and address bus 15 via an operation panel""s interface unit 12, and an image signal to be displayed on the display device is output to the operation panel 13 via the operation panel""s interface unit 12.
A clock signal 30 output from a clock generation circuit 16 is used as that for the CPU 5.
In recent years, image forming apparatuses such as color copying machines, color printers, and the like can form higher-quality color images and, hence, images with quality equivalent to those of bills, securities, and the like.
However, formation of such images is illegal. Therefore, a technique for inhibiting such images from being formed is known.
For example, additional information that specifies a given image forming apparatus or user can be embedded in all images formed by that image forming apparatus to be hardly perceivable or discernible by the human eye.
With such information, even when an image is illicitly formed, various situations upon forming this image can be detected by decoding the additional information in that formed image using a dedicated decoding apparatus.
Note that this additional information is embedded in the Y component alone of a color image made up of Y (yellow), M (magenta), C (cyan), and K (black) to conceal the presence of the additional information from the human eye.
In general, the final stage (that is, a printer engine) of the image forming processes adds additional information to an original image. Otherwise, there is only one equipment having a function of adding additional information in a system from when image data is generated until it is printed.
Conventionally, a system until generated image data is finally formed as a visible image includes only one equipment having a function of adding additional information.
Hence, when the system until the generated image data is finally formed as a visible image includes a plurality of equipments having a function of adding additional information, no optimal adding method of the additional information is available to date.
For example, when both the image processing unit (a printer controller in case of a printer) and the image forming unit (a printer engine in case of the printer) have the above-mentioned function of adding additional information, one of these units to add additional information must be selected, and its adding method must be set in advance.
On the other hand, when either of the image processing unit and image forming unit has a function of adding additional information, the unit which has the adding function must always add the additional information.
The present invention has been made in consideration of the aforementioned prior art, and has as its object to reliably and efficiently add additional information to an input image even when a system for performing image processing of the input image may include a plurality of equipments having a function of adding additional information.
In order to achieve the above object, according to one preferred embodiment of the present invention, there is provided an image processing apparatus comprising:
generation means for generating image data;
discrimination means for discriminating whether or not an externally connected equipment related to the image data generated by the generation means has a function of adding predetermined additional information to be hardly discernible by the human eye;
adding means for adding the predetermined additional information to the image data generated by the generation means to be hardly discernible by the human eye in accordance with a discrimination result of the discrimination means; and
output means for outputting the image data to which the predetermined additional information is added by the adding means or the image data generated by the generation means.
There is also provided an image processing apparatus comprising:
generation means for generating image data;
discrimination means for discriminating whether or not an externally connected equipment related to the image data generated by the generation means adds predetermined additional information to be hardly discernible by the human eye;
adding means for adding the predetermined additional information to the image data generated by the generation means to be hardly discernible by the human eye in accordance with a discrimination result of the discrimination means; and
output means for outputting the image data to which the predetermined additional information is added by the adding means or the image data generated by the generation means.
Other objects and features of the present invention will become apparent from the following description of the embodiments taken in conjunction with the accompanying drawings.